var log = wx.getRealtimeLogManager ? wx.getRealtimeLogManager() : null
const version = wx.getAccountInfoSync().miniProgram.envVersion
const ws = require('./websocket');

module.exports = {
  /**
   * 发送ws
   * @param {*} logs 要发送的数据
   */
  sendMsg(logs) {
    const msg = {
      cmd: 'log',
      ...logs
    }
    ws.sendWsMsg(msg);
  },

  debug() {
    if (version !== 'release') {
      console.log(arguments)
    } else {
      if (!log) return
      log.debug.apply(log, arguments)
    }
    // this.sendMsg(arguments);
  },
  info() {
    if (version !== 'release') {
      console.log(arguments)
    } else {
      if (!log) return
      log.info.apply(log, arguments)
    }
    // this.sendMsg(arguments);
  },
  warn() {
    if (version !== 'release') {
      console.log(arguments)
    } else {
      if (!log) return
      log.warn.apply(log, arguments)
    }
    // this.sendMsg(arguments);
  },
  error() {
    if (version !== 'release') {
      console.log(arguments)
    } else {
      if (!log) return
      log.error.apply(log, arguments)
    }
    this.sendMsg(arguments);
  },
  setFilterMsg(msg) { // 从基础库2.7.3开始支持
    if (!log || !log.setFilterMsg) return
    if (typeof msg !== 'string') return
    log.setFilterMsg(msg)
  },
  addFilterMsg(msg) { // 从基础库2.8.1开始支持
    if (!log || !log.addFilterMsg) return
    if (typeof msg !== 'string') return
    log.addFilterMsg(msg)
  }
}